package com.wjw.spring5.service;

import com.wjw.spring5.dao.UserDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;

/**
 * @author wjw
 * @date 2021年10月31日 17:56
 */
// 注解的value属性可以不写，默认为类的首字母小写 等价于bean标签的id值
@Service(value = "userService")
public class UserService {
    /** 定义dao类型属性
     * 不需要添加set方法，封装好的
     * 添加注入属性注解
     */
    /*@Autowired // 根据属性类型进行注入，属性相同就分不清注入那个了；一般和@Qualifier一起使用
    @Qualifier(value = "userDaoImp") // 根据名称（id）进行注入
    private UserDao userDao;

    @Resource // 这么写时表示根据类型进行注入
    private UserDao userDao;*/

    @Resource(name = "userDaoImp") // 这么写时表示根据名称进行注入
    private UserDao userDao;

    @Value(value = "wahhhh")
    private String name;

    public void add() {
        System.out.println("service add...");
        System.out.println(name);
        userDao.add();
    }
}
